{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "# Analysis of Simulation Data\n",
    "In this notebook, I want to see how many of the simulated cliques are predicted by the GCN algorithm."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "import pandas as pd\n",
    "import numpy as np\n",
    "import os\n",
    "from sklearn.metrics import roc_auc_score, roc_curve\n",
    "from sklearn.metrics import precision_recall_curve, average_precision_score\n",
    "import matplotlib.pyplot as plt\n",
    "#import seaborn\n",
    "\n",
    "%matplotlib inline"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "### basic definitions"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "def read_implant_positions(file):\n",
    "    with open(file, 'r') as f:\n",
    "        subnetworks = []\n",
    "        disease_genes = []\n",
    "        for subnet in f.readlines():\n",
    "            if subnet.startswith('#'):\n",
    "                continue\n",
    "            vals = [int(i.strip()) for i in subnet.strip().split(':')[1].strip().split('\\t')]\n",
    "            subnetworks.append(vals)\n",
    "            disease_genes.append(vals[0])\n",
    "    return pd.DataFrame(subnetworks), disease_genes\n",
    "\n",
    "def get_top_n_both(scores, disease_genes, n):\n",
    "    return scores.head(n)[scores.head(n).index.isin(disease_genes)]\n",
    "\n",
    "def get_recovered_nodes(scores, subnets):\n",
    "    idx = []\n",
    "    for score in scores.index:\n",
    "        if subnets[subnets.isin([int(score)]).any(axis=1)].shape[0] > 0:\n",
    "            idx.append(score)\n",
    "    return scores.loc[idx]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "/home/sasse/anaconda3/lib/python3.7/site-packages/ipykernel/__main__.py:1: FutureWarning: from_csv is deprecated. Please use read_csv(...) instead. Note that some of the default arguments are different, so please refer to the documentation for from_csv when changing your function calls\n",
      "  if __name__ == '__main__':\n"
     ]
    }
   ],
   "source": [
    "pagerank_scores = pd.DataFrame.from_csv('../data/simulation/pagerank_scores_sim.txt', sep='\\t')\n",
    "subnets, disease_genes = read_implant_positions('../data/simulation/clique_network/implant_positions.txt')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Gene_Name</th>\n",
       "      <th>Rank</th>\n",
       "      <th>NetRank_Score</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Gene_ID</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0.0</th>\n",
       "      <td>0.0</td>\n",
       "      <td>681</td>\n",
       "      <td>0.000528</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1.0</th>\n",
       "      <td>1.0</td>\n",
       "      <td>853</td>\n",
       "      <td>0.000502</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2.0</th>\n",
       "      <td>2.0</td>\n",
       "      <td>932</td>\n",
       "      <td>0.000490</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3.0</th>\n",
       "      <td>3.0</td>\n",
       "      <td>946</td>\n",
       "      <td>0.000487</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4.0</th>\n",
       "      <td>4.0</td>\n",
       "      <td>985</td>\n",
       "      <td>0.000479</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "         Gene_Name  Rank  NetRank_Score\n",
       "Gene_ID                                \n",
       "0.0            0.0   681       0.000528\n",
       "1.0            1.0   853       0.000502\n",
       "2.0            2.0   932       0.000490\n",
       "3.0            3.0   946       0.000487\n",
       "4.0            4.0   985       0.000479"
      ]
     },
     "execution_count": 8,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "pagerank_scores[pagerank_scores.index.isin(subnets)]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Gene_Name</th>\n",
       "      <th>Rank</th>\n",
       "      <th>NetRank_Score</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Gene_ID</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>525.0</th>\n",
       "      <td>525.0</td>\n",
       "      <td>5</td>\n",
       "      <td>0.009391</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>924.0</th>\n",
       "      <td>924.0</td>\n",
       "      <td>9</td>\n",
       "      <td>0.006083</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>641.0</th>\n",
       "      <td>641.0</td>\n",
       "      <td>10</td>\n",
       "      <td>0.005996</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>879.0</th>\n",
       "      <td>879.0</td>\n",
       "      <td>86</td>\n",
       "      <td>0.001710</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>286.0</th>\n",
       "      <td>286.0</td>\n",
       "      <td>118</td>\n",
       "      <td>0.001427</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>149.0</th>\n",
       "      <td>149.0</td>\n",
       "      <td>124</td>\n",
       "      <td>0.001402</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>701.0</th>\n",
       "      <td>701.0</td>\n",
       "      <td>135</td>\n",
       "      <td>0.001356</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>723.0</th>\n",
       "      <td>723.0</td>\n",
       "      <td>160</td>\n",
       "      <td>0.001266</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>744.0</th>\n",
       "      <td>744.0</td>\n",
       "      <td>174</td>\n",
       "      <td>0.001183</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>369.0</th>\n",
       "      <td>369.0</td>\n",
       "      <td>201</td>\n",
       "      <td>0.001126</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>815.0</th>\n",
       "      <td>815.0</td>\n",
       "      <td>213</td>\n",
       "      <td>0.001094</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>30.0</th>\n",
       "      <td>30.0</td>\n",
       "      <td>224</td>\n",
       "      <td>0.000998</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>547.0</th>\n",
       "      <td>547.0</td>\n",
       "      <td>226</td>\n",
       "      <td>0.000995</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>431.0</th>\n",
       "      <td>431.0</td>\n",
       "      <td>254</td>\n",
       "      <td>0.000954</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>964.0</th>\n",
       "      <td>964.0</td>\n",
       "      <td>268</td>\n",
       "      <td>0.000937</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>716.0</th>\n",
       "      <td>716.0</td>\n",
       "      <td>292</td>\n",
       "      <td>0.000917</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>904.0</th>\n",
       "      <td>904.0</td>\n",
       "      <td>294</td>\n",
       "      <td>0.000915</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>989.0</th>\n",
       "      <td>989.0</td>\n",
       "      <td>296</td>\n",
       "      <td>0.000915</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "         Gene_Name  Rank  NetRank_Score\n",
       "Gene_ID                                \n",
       "525.0        525.0     5       0.009391\n",
       "924.0        924.0     9       0.006083\n",
       "641.0        641.0    10       0.005996\n",
       "879.0        879.0    86       0.001710\n",
       "286.0        286.0   118       0.001427\n",
       "149.0        149.0   124       0.001402\n",
       "701.0        701.0   135       0.001356\n",
       "723.0        723.0   160       0.001266\n",
       "744.0        744.0   174       0.001183\n",
       "369.0        369.0   201       0.001126\n",
       "815.0        815.0   213       0.001094\n",
       "30.0          30.0   224       0.000998\n",
       "547.0        547.0   226       0.000995\n",
       "431.0        431.0   254       0.000954\n",
       "964.0        964.0   268       0.000937\n",
       "716.0        716.0   292       0.000917\n",
       "904.0        904.0   294       0.000915\n",
       "989.0        989.0   296       0.000915"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "recovered_disease_genes = get_top_n_both(pagerank_scores, disease_genes, 300)\n",
    "recovered_disease_genes"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Recovered 18 disease genes within first 300 Ranks\n"
     ]
    }
   ],
   "source": [
    "print (\"Recovered {} disease genes within first 300 Ranks\".format(recovered_disease_genes.shape[0]))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Recovered 54 implanted nodes within the first 300 Ranks\n"
     ]
    }
   ],
   "source": [
    "pr_scores_subnets = get_recovered_nodes(pagerank_scores, subnets)\n",
    "n = 300\n",
    "recovered_pr = pr_scores_subnets[pr_scores_subnets.Rank <= n]\n",
    "print (\"Recovered {} implanted nodes within the first {} Ranks\".format(recovered_pr.shape[0], n))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {
    "deletable": true,
    "editable": true
   },
   "source": [
    "# GCN"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "/home/sasse/anaconda3/lib/python3.7/site-packages/ipykernel/__main__.py:3: FutureWarning: from_csv is deprecated. Please use read_csv(...) instead. Note that some of the default arguments are different, so please refer to the documentation for from_csv when changing your function calls\n",
      "  app.launch_new_instance()\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "(1053, 15)"
      ]
     },
     "execution_count": 31,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "#model_dir = '../data/GCN/training/2018_03_29_11_46_50/'\n",
    "model_dir = '../data/GCN/training/2020_06_17_12_22_22/'\n",
    "gcn_pred = pd.DataFrame.from_csv(os.path.join(model_dir, 'ensemble_predictions.tsv'), sep='\\t')\n",
    "gcn_pred.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Recovered 38 disease genes with 636 positive predictions\n"
     ]
    }
   ],
   "source": [
    "scores_diseasegenes_gcn = gcn_pred[gcn_pred.index.isin(disease_genes)]\n",
    "recovered_diseasegenes_gcn = scores_diseasegenes_gcn[scores_diseasegenes_gcn.Mean_Pred > 0.5]\n",
    "no_dg_gcn = recovered_diseasegenes_gcn.shape[0]\n",
    "no_pos_pred = gcn_pred[gcn_pred.Mean_Pred > 0.5].shape[0]\n",
    "print (\"Recovered {} disease genes with {} positive predictions\".format(no_dg_gcn, no_pos_pred))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "gcn_idx = []\n",
    "for score in gcn_pred.index:\n",
    "    if subnets[subnets.isin([int(score)]).any(axis=1)].shape[0] > 0:\n",
    "        gcn_idx.append(score)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 34,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(190, 15)"
      ]
     },
     "execution_count": 34,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "gcn_pred_for_subnets = gcn_pred.loc[gcn_idx]\n",
    "gcn_pred_for_subnets.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true,
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(190,)"
      ]
     },
     "execution_count": 35,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "(gcn_pred.loc[gcn_idx].Mean_Pred > .5).shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 36,
   "metadata": {
    "collapsed": true,
    "deletable": true,
    "editable": true
   },
   "outputs": [],
   "source": [
    "recovered_gcn = gcn_pred_for_subnets[gcn_pred_for_subnets.Mean_Pred > .5]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 37,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "((190, 15), (636, 15))"
      ]
     },
     "execution_count": 37,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "recovered_gcn.shape, gcn_pred[gcn_pred.Mean_Pred > 0.5].shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 38,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.legend.Legend at 0x7fafac9c74a8>"
      ]
     },
     "execution_count": 38,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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YWFhREVFkZ+f71Xe5qSmxpP1U+Hgavfa0D9B6y7nfFm7du246qqrAIiPj+fBBx/kmmuuISwsrLmSioiIiEgTWb9+PUOGDDnr+Lp160hOTj7reFBQEI899hjPP//8WecALF261O19li5dSnR0NDExMYwZM4ZPPvnkvFmPHDnCkSNHiImJOe/cPXv2uJqSiIgI9u7d22BOWloa6enpREREEBERwdVXX018fPx53zslJYXFixefd15zU1NzpoNrYf2z7rU+t0Gvm7DWsn79et577z3XGsMzDR8+nIkTJ/LDH/6QLl3O3QSJiIiIiP+aPHkyiYmJDB061OvX3H777SxfvpwtW7acdc6uXbvo1q2b63jOnDnceuutANx6663MmTMHOPuOYMaYJv86kKKiIjZs2EBJSQk7duwgNzeXRYsWnfd13bt39/j4ha9pPdTp6qrrdzurqz5Va9Mdkl9m+/btZGdnU1JSAtTfibniiisavEVISAi9e/f2VWIRERGRi89ZnnlpbgMGDOC9995zHU+fPp39+/eTkpLiGi8sLHRbOnamkJAQHnnkkQbPrJyubdu2riVmtbW1vPfee8ydO5fnnnvO9UWUR44coUuXLg0e6j9w4ADR0dGEh4fTrl07Nm/e7PZsjic9evRg165dREREsGvXLrp3795gzgcffEBqaqprM4Brr72W5cuXM2rUqHO+d2VlJW3btj3nHF/QnZrTff0CHFzpVjoQ9xL//N/5vP76666GBuCLL76gpqbmzHcQERERkQA1duxYKisr+eMf/+iqlZeXu35+6KGHePPNN8nLy3PV3nrrLXbv3u32PnfddRdffPHFWb9MMj4+nqKiIqD+M2ViYiLbt2+nuLiYrVu3cvPNN/Phhx/Svn17IiIimDdvHlDf0Hz22WeMHDkSgCeeeILJkydz+PBhAA4fPsyMGTManG/8+PG8+eabALz55psem7LevXuzcOFCampqqK6uZuHChV4tP9u4cWODHdqcoKbmpEPrYN0zrsOK2rZ8Xvkw098v4uuvv24wvaysjO3bt/syoYiIiIg0I2MMH374IQsXLiQ6Opphw4YxYcIE112XHj168M477/Doo48SFxdHfHw8ixcvdj2of1KrVq2YMmWKx2dXAK677joWLFgA1C89+/73v+82fvPNN7t2X5s1axa//e1vSUpKYuzYsTz11FOu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FQVAaWkp8+fPJyMjgy5dunDw4EG6du0KwIEDB1w/DxgwwLVc7lwiIyPZvv3Ut72UlJRw2WWXNZjXs2dPADp06MDtt99Ofn4+d955J1C//K5t27bnPM+F0p0aEREREZEzdOzYkZdffpkXX3yR6upqysrK6N69O6GhocyfP5+tW7ee8/WdOnWiY8eOLFmyBKi/c3HSqFGjXMcbN25k27ZtxMXFNSpnfHw8RUVFABw+fJglS5awbds2iouLKS4uZvr06a4laGPGjHHdMamtreWtt94iPT0dgF/+8pc8//zzrjtGdXV1TJs2rcH5xo8fz6xZs7DWsnz5cjp27EhERITbnJqaGtcua9XV1Xz88cduO79t3LixyXeCU1MjIiIiIuLB4MGDSUxM5J133uHHP/4xBQUFpKSkMHv2bNcD9efyxhtvMHnyZNLS0tzuTDz44IPU1tYycOBAfvSjHzFz5ky3OzQX4tprr2XRokUAvP/++4wdO9btvW688Ubmzp3L8ePH+fWvf01RURGJiYkMHjyY2NhY7rjjDgAGDRrESy+9xG233UZ8fDwJCQkeNwD43ve+x+WXX05sbCz33nsvr776qmvs5BK848ePc/XVVzNo0CCSkpLo2bMn9957r2ve0qVLycjIaNTvezbGqZ2XU1JSbEFBgSPnFhERERH/s2HDBuLj452OEXC+//3v88ILL9C3b1+no5zXqlWrmDZtmtszNid5+vM3xhRaa1MaTD6D7tSIiIiIiASwqVOnXtC2yk7av38/zz77bJO/rzYKEBEREREJYHFxcY1+JsfXTu4m19R0p0ZERERE/IZTj0aIs77rn7uaGhERERHxC23atKG0tFSNTQtjraW0tJQ2bdo0+j20/ExERERE/EJkZCQlJSXs27fP6SjiY23atCEyMrLRr1dTIyIiIiJ+ITQ0lOjoaKdjSADS8jMREREREQloampERERERCSgqakREREREZGAZpzaXcIYsw/Y6sjJPesK7Hc6hAQcXTfSGLpupDF03Uhj6LqRxvCn66aPtbbb+SY51tT4G2NMgbU2xekcElh03Uhj6LqRxtB1I42h60YaIxCvGy0/ExERERGRgKamRkREREREApqamlNmOB1AApKuG2kMXTfSGLpupDF03UhjBNx1o2dqREREREQkoOlOjYiIiIiIBDQ1NSIiIiIiEtBaVFNjjLnGGPONMabIGPO4h/HWxpi/nxjPM8ZE+T6l+BsvrptfGGO+NsasNcbMM8b0cSKn+JfzXTenzbvFGGONMQG1daY0D2+uG2PMD0/8nbPeGPO2rzOK//Hiv1O9jTHzjTGrTvy36ntO5BT/Yox53Riz1xiz7izjxhjz8onraq0xZoivM16IFtPUGGOCgenAtcAVwG3GmCvOmHY3cNBaGwv8N/A736YUf+PldbMKSLHWDgLeBV7wbUrxN15eNxhjOgBTgDzfJhR/5M11Y4zpCzwBjLDWDgD+n8+Dil/x8u+bfwf+Ya0dDNwKvOrblOKnZgLXnGP8WqDvif+7D/ijDzI1WotpaoBhQJG1drO1tgp4B7jxjDk3Am+e+PldYJwxxvgwo/if81431tr51tryE4fLgUgfZxT/483fNwDPUt8EV/oynPgtb66be4Hp1tqDANbavT7OKP7Hm+vGAuEnfu4I7PRhPvFT1tpFwIFzTLkRmGXrLQc6GWMifJPuwrWkpqYnsP2045ITNY9zrLU1QBnQxSfpxF95c92c7m7g02ZNJIHgvNeNMWYw0Mta+7Evg4lf8+bvm35AP2PMUmPMcmPMuf6VVVoGb66bp4E7jDElwCfAw76JJgHuQj8DOSrE6QA+5OmOy5n7WXszR1oWr68JY8wdQAowulkTSSA453VjjAmifonrXb4KJAHBm79vQqhfCjKG+rvCi40xCdbaQ82cTfyXN9fNbcBMa+1/GWPSgL+duG7qmj+eBLCA+lzcku7UlAC9TjuOpOHtV9ccY0wI9bdoz3VbTi5+3lw3GGMygCeB8dba4z7KJv7rfNdNByABWGCMKQZSgbnaLKDF8/a/Ux9Za6uttVuAb6hvcqTl8ua6uRv4B4C19kugDdDVJ+kkkHn1GchftKSmZgXQ1xgTbYxpRf2DcnPPmDMXmHDi51uAXKtvJ23pznvdnFhG9GfqGxqtbxc4z3VjrS2z1na11kZZa6OofxZrvLW2wJm44ie8+e/Uh0A6gDGmK/XL0Tb7NKX4G2+um23AOABjTDz1Tc0+n6aUQDQXuPPELmipQJm1dpfToc6mxSw/s9bWGGMeAj4HgoHXrbXrjTG/AQqstXOB16i/JVtE/R2aW51LLP7Ay+vm90B74J8n9pXYZq0d71hocZyX142IGy+vm8+BLGPM10At8EtrbalzqcVpXl43jwB/Mcb8nPrlQ3fpH23FGDOH+qWsXU88b/UUEApgrf0T9c9ffQ8oAsqBic4k9Y7RNS0iIiIiIoGsJS0/ExERERGRi5CaGhERERERCWhqakREREREJKCpqRERERERkYCmpkZERERERAKamhoREREREQloampERERERCSg/X+94tYLeNmngQAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<Figure size 1008x576 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "subnet_entries = subnets.values.flatten()\n",
    "y_true = gcn_pred.index.isin(subnet_entries)\n",
    "y_score = gcn_pred.Mean_Pred\n",
    "tpr, fpr, _ = roc_curve(y_score=y_score, y_true=y_true)\n",
    "auc = roc_auc_score(y_score=y_score, y_true=y_true)\n",
    "fig = plt.figure(figsize=(14, 8))\n",
    "plt.plot(tpr, fpr, lw=4, color='orange', label='GCN (AUC {0:.2f})'.format(auc))\n",
    "plt.plot([0, 1], [0, 1], color='gray', lw=4, linestyle='--', label='Random (AUC 0.5)')\n",
    "plt.legend(loc='lower right')\n",
    "#fig.savefig(model_dir + 'roc_curve_cliquemems_allnodes.png', dpi=300)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 39,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true,
    "scrolled": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "0.18043684710351376 190 863\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<matplotlib.legend.Legend at 0x7fafad352208>"
      ]
     },
     "execution_count": 39,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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BCamx65P51gDXELq57u71/0UeIfUNt3/KnT/UqA/cDOwglQRG4j/X5ekPRJizHZUXpIkSZIqNv8FSZIkSVKlZBmSJEmSVClZhiRJkiRVSpYhSZIkSZWSZUiSJElSpVTuLrrasGHD2Lx589KOIUmSJKmMmjJlypcxxka7myt3Zah58+ZMnjy5tGNIkiRJKqNCCEuKMucyOUmSJEmVkmVIkiRJUqVkGZIkSZJUKZW7c4YkSZJUeW3ZsoVly5axcePG0o6iMqB69eo0adKEvLy8vXq+ZUiSJEnlxrJly9hvv/1o3rw5IYTSjqNSFGNk5cqVLFu2jBYtWuzVa7hMTpIkSeXGxo0badCggUVIhBBo0KDBPh0ltAxJkiSpXLEIaZt9/btgGZIkSZJUKVmGJEmSpD3w+eefc/HFF9OyZUu6dOlCt27deOGFF7Y/PmnSJLp3706bNm1o27YtV155JevXr+fxxx8nJyeHDz74YPtshw4dWLx4cdb3Of/881m4cOH229OmTSOEwCuvvLL9vsWLF9OhQ4dvPe/222/nv//7vwG4/PLLadGiBZ07d+boo4/mnXfeybi/U6dOvPbaa/v8cwF44oknOOywwzjssMN44oknss785je/4cgjj6Rz586cccYZfPLJJwA88MADdO7cmc6dO9OhQwdyc3NZtWoVmzdvpnv37mzdurVYMhbmBgqSJEkqf54u4aVyF8esd8cYGTBgAJdddhlPP/00AEuWLGHYsGFAqih997vf5ZlnnqFbt27EGHn++ef55ptvAGjSpAn33HMP//rXv3b59rNmzSI/P5+WLVtuv2/IkCGceOKJDBkyhF69ehX5ozzwwAOcf/75jB49mh/96Efby9i2+8eOHcvVV1/N/Pnzi/ya2axatYo77riDyZMnE0KgS5cu9OvXj/333/9bcwMHDuSuu+4CYNCgQdx55508+uijDBw4kIEDBwIwfPhwfv/731O/fn0ATjvtNP71r39xySWX7FPGHXlkSJIkSSqi119/napVq/LjH/94+33NmjXjpz/9KQCPPPIIl112Gd26dQNS57Scf/75HHDAAQD06dOHWbNmMXfu3F2+z+DBg+nfv//22zFGnnvuOR5//HFGjx69V5sGdO/enQULFmTc361bN5YvX77Hr7ejV155hZ49e1K/fn32339/evbsyahRozLm6tSps/37devWZT3vZ8iQIVx00UXbbw8YMIDBgwfvc8YdWYYkSZKkIpo1axZHH330Th+fOXMmXbp02enjOTk5/OIXv+C3v/3tLt9nwoQJ33qdCRMm0KJFC1q1asUpp5zCyJEj9zj78OHD6dixY8b9o0aNYsCAAVmfU3jpWuGvn/3sZxmzy5cvp2nTpttvN2nSZKcl65ZbbqFp06YMHjyYO++881uPrV+/nlGjRnHeeedtv69Dhw689957Rfqce8IyJEmSJO2la6+9lk6dOnHMMccU+TkXX3wx7777LosWLdrpzKeffkqjRo223x4yZAgXXnghABdeeCFDhgwBdr6bWuH7Bw4cSOfOnfnLX/7CY4899q37W7ZsyaWXXsrNN9+c9XUGDhzI9OnTM74GDRqUMRtj5tLCneW75557WLp0KZdccgkPP/zwtx4bPnw4J5xwwvYlcgC5ublUrVp1+3LD4uI5Q5IkSSp/dnJOT0lr3749zz///PbbjzzyCF9++SVdu3bd/viUKVO+tcRtR1WqVOHGG2/kvvvu2+lMjRo1ti+Fy8/P5/nnn2fYsGHcc8892y82+s0339CgQQNWr179reeuWrXqWxch3XZu0I4eeOABzj33XAYNGsRll13GlClTss5kW57WvXv3jELUpEkTxo0bt/32smXLOOWUU3b6GSFVDM8++2zuuOOO7fc988wz31oit82mTZuoXr36Ll9vT5XYkaEQwt9DCF+EEGbu5PEQQhgUQlgQQvgghLDz442SJElSGdCjRw82btzIn/70p+33rV+/fvv31113HU888QQTJ07cft8///lPPvvss2+9zuWXX86YMWNYsWJF1vdp167d9vN7xowZQ6dOnVi6dCmLFy9myZIlnHfeebz44ovUrl2bgw46aPtucKtWrWLUqFGceOKJRfo8OTk5XH/99RQUFHxrl7pt9uTIUK9evRg9ejSrV69m9erVjB49OutGD4U3ahg2bBht27bdfvurr77ijTfeyCiTK1eupFGjRuTl5RXpcxVVSS6Texw4cxePnwUclv66GvjTLmbLnmkD4b1rYd3HpZ1EkiRJCQkh8OKLL/LGG2/QokULjj32WC677LLtR3kOOOAAnnnmGW666SbatGlDu3bteOutt761aQBA1apV+dnPfsYXX3yR9X3OPvvs7UdZhgwZwjnnnPOtx88777ztu9k9+eST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\n",
      "text/plain": [
       "<Figure size 1008x576 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "\n",
    "aupr = average_precision_score(y_true, y_score)\n",
    "pr, rec, thr = precision_recall_curve(y_true, y_score)\n",
    "\n",
    "fig = plt.figure(figsize=(14, 8))\n",
    "plt.plot(rec, pr, lw=4, color='orange', label='GCN (AUPR = {0:.2f})'.format(aupr))\n",
    "random_y = y_true.sum() / (y_true.sum() + y_true.shape[0] - y_true.sum())\n",
    "print (random_y, y_true.sum(), y_true.shape[0]-y_true.sum())\n",
    "plt.plot([0, 1], [random_y, random_y], color='gray', lw=4, linestyle='--', label='Random')\n",
    "plt.xlabel('Recall')\n",
    "plt.ylabel('Precision')\n",
    "plt.title('Precision-Recall Curve')\n",
    "plt.legend()\n",
    "#fig.savefig(os.path.join(model_dir, 'prec_recall_cliquemems_allnodes.png'))\n",
    "\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 40,
   "metadata": {
    "collapsed": false,
    "deletable": true,
    "editable": true
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[Threshold: 0.994] Precision: 0.0\tRecall: 0.0\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "/home/sasse/anaconda3/lib/python3.7/site-packages/sklearn/metrics/classification.py:1143: UndefinedMetricWarning: Precision is ill-defined and being set to 0.0 due to no predicted samples.\n",
      "  'precision', 'predicted', average, warn_for)\n"
     ]
    }
   ],
   "source": [
    "from sklearn.metrics import precision_score, recall_score\n",
    "THRESHOLD = .994\n",
    "pr_s = precision_score(y_true=y_true, y_pred=y_score >= THRESHOLD)\n",
    "rec_s = recall_score(y_true=y_true, y_pred=y_score >= THRESHOLD)\n",
    "print (\"[Threshold: {}] Precision: {}\\tRecall: {}\".format(THRESHOLD, pr_s, rec_s))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 41,
   "metadata": {
    "collapsed": false,
    "scrolled": false
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "Text(0.5, 1.0, 'Thresholds')"
      ]
     },
     "execution_count": 41,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 1008x576 with 3 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "fig = plt.figure(figsize=(14, 8))\n",
    "plt.subplot(2, 2, 1)\n",
    "plt.plot(rec)\n",
    "plt.title('Recall')\n",
    "plt.subplot(2, 2, 2)\n",
    "plt.plot(pr)\n",
    "plt.title('Precision')\n",
    "plt.subplot(2, 2, 3)\n",
    "plt.plot(thr)\n",
    "plt.title('Thresholds')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.3"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
